Contact centers are employed by many enterprises to service customer contacts. A typical contact center includes a switch and/or server to receive and route incoming packet-switched and/or circuit-switched contacts and one or more resources, such as human agents and automated resources (e.g., Interactive Voice Response (IVR) units), to service the incoming contacts. Contact centers distribute contacts, whether inbound or outbound, for servicing to any suitable resource according to predefined criteria. In many existing systems, the criteria for servicing the contact from the moment that the contact center becomes aware of the contact until the contact is connected to an agent are customer-specifiable (i.e., programmable by the operator of the contact center), via a capability called vectoring. Normally in present-day ACDs when the ACD system's controller detects that an agent has become available to handle a contact, the controller identifies all predefined contact-handling queues for the agent (usually in some order of priority) and delivers to the agent the highest-priority oldest contact that matches the agent's highest-priority queue. Generally, the only condition that results in a contact not being delivered to an available agent is that there are no contacts waiting to be handled.
The primary objective of contact center management is to ultimately maximize contact center performance and profitability. An ongoing challenge in contact center administration is monitoring and optimizing contact center efficiency. Contact center efficiency is generally measured in two ways.
Service level is one measurement of contact center efficiency and is generally determined by dividing the number of contacts accepted within a selected period of time by the number of contacts arriving in a contact center over the same period of time plus the number that were not accepted, but completed in some other way (e.g., abandoned, given busy, canceled, flowed out, etc.). Of course, service level definitions may vary from one enterprise to another.
Match rate is another indicator used in measuring contact center efficiency. Match rate is usually determined by dividing the number of contacts accepted by a primary skill level agent within a period of time by the number of contacts accepted by any agent for a queue over the same period. An agent with a primary skill level is one that typically can handle contacts of a certain nature most effectively and/or efficiently. There are other contact center agents that may not be as proficient as the primary skill level agent, and those agents are identified either as secondary skill level agents or backup skill level agents. As can be appreciated, contacts received by a primary skill level agent are typically handled more quickly and accurately or effectively (e.g., higher revenue attained) than a contact received by a secondary or even backup skill level agent. Thus, it is an objective of most contact centers to optimize match rate along with service level.
In this pursuit of contact center optimization, a contact center administrator will often make administrative changes trying to improve the level of service and/or match rate. The administrative changes may include changing staffing levels, changing agent queue assignments, or changing contact routing vectors. Usually the contact center administrator makes these changes with a goal of optimizing performance locally (i.e., within a certain group or within a certain business unit). Unfortunately, it is very difficult for the contact center administrator to predict the effects of such a change globally. For example, if two additional agents were added to a particular queue by changing their skill levels, they may no longer be able to service two other queues. Thus, the performance of one queue group will be improved at the expense of two other queue groups. It would be convenient to reverse such a change that has a negative impact on the overall contact center performance.
A problem is that identifying what system change affected performance is not an easy task. Additionally, there are currently few or no provisions for reversing such a change, even if it were identified. Rather, it is up to the contact center administrator to identify what change had a negative impact on contact center performance and reverse the change. However, in a complex contact center it may be nearly impossible for the administrator to determine the change that resulted in a decrease of contact center performance. If the administrator is unable to identify the degrading change but attempts to remedy the situation by changing some other contact center parameter the problem may be compounded.